home *** CD-ROM | disk | FTP | other *** search
/ Plug-In Power Pack for Netscape Communicator / Plug-In Power Pack for Netscape Communicator.iso / plugins / dataviews / include / dvrule.h < prev    next >
C/C++ Source or Header  |  1997-05-08  |  3KB  |  105 lines

  1. /*
  2. |    file name -- dvrule.h
  3. |===================================================================
  4. |
  5. |    Copyright (c) 1989 V.I. Corporation
  6. |
  7. |    dvrule.h - Declarations and defines for object rules.
  8. |
  9. */
  10.  
  11. #ifndef DVRULE_H
  12. #define DVRULE_H
  13.  
  14. typedef LONG RULE_ARG;
  15.  
  16. /* FOR INTERNAL USE ONLY */
  17. #define V_NUM_ARGS 3    /* max of V_NUM_COND_ARGS and V_NUM_ACTION_ARGS */
  18.  
  19. #define V_NUM_COND_ARGS 3
  20. typedef struct RULE_CONDITION
  21.   {
  22.   char type;
  23.   RULE_ARG arg[V_NUM_COND_ARGS];
  24.   } RULE_CONDITION;
  25.  
  26. #define V_NUM_ACTION_ARGS 2
  27. typedef struct RULE_ACTION
  28.   {
  29.   char type;
  30.   RULE_ARG  arg[V_NUM_ACTION_ARGS];
  31.   struct RULE_ACTION *next;
  32.   } RULE_ACTION;
  33.  
  34. /****************************** Rule Components ************************/
  35. #define V_R_EVENT       1
  36. #define V_R_CONDITION   2
  37. #define V_R_ACTION      3
  38.  
  39. /****************************** Rule Events ************************/
  40. #define V_RE_PICK        1
  41. #define V_RE_DONE        2
  42. #define V_RE_ACCEPT        3
  43. #define V_RE_CANCEL        4
  44. #define V_RE_DRAW        5    /* Drawings Only */
  45. #define V_RE_UPDATE        6    /* Drawings Only */
  46. #define V_RE_EVENT_USED        7
  47. #define V_R_NUM_EVENTS        7
  48.  
  49. /************************* Rule Conditionals OPERANDS ***************/
  50. #define V_RC_ALWAYS        1
  51. #define V_RC_PICK_BUTTON    2    /* <> <> <button number> */
  52. #define V_RC_PICK_ASCII        3    /* <> <> <key string> */
  53. #define V_RC_DSV_VALUE        4    /* <dsv> <operator> <value> */
  54. #define V_RC_DSV_DSV        5    /* <dsv> <operator> <dsv> */
  55. #define V_RC_OBJ_VAR_VALUE    6    /* <> <operator> <value> */
  56. #define V_R_NUM_CONDITIONS    6
  57.  
  58. /* Rule Conditionals OPERATORS ( =,!=,<,<=,>,>= ) */
  59. #define V_RC_EQUAL        1
  60. #define V_RC_NOT_EQUAL        2
  61. #define V_RC_LESS_THAN        3
  62. #define V_RC_LESS_EQUAL_THAN    4
  63. #define V_RC_GREATER_THAN    5
  64. #define V_RC_GREATER_EQUAL_THAN    6
  65. #define V_RC_NUM_OPERATORS    6
  66.  
  67. /***************************** Rule Actions *************************/
  68. #define V_RA_NEXT        1    /* <view name> */
  69. #define V_RA_PREVIOUS        2
  70.  
  71. /* ADD/DEL_OVERLAY */
  72. #define V_RA_OVERLAY_VIEW    3      /* <view name> */
  73. #define V_RA_DEL_OVERLAY_VIEW   4       /* <view name> */
  74. #define V_RA_OVERLAY_OBJ    5     /* <obj name> <from view name > */
  75.  
  76. #define V_RA_DEL_OBJECT        6      /* <obj name> <from view name> */
  77.  
  78. /* TRUE POPUPS */
  79. #define V_RA_POPUP_AT        7       /* <obj name> <from view name> */
  80. #define V_RA_ERASE_POPUP_AT    8       /* obsolete, same as V_RA_DEL_OBJ */ 
  81. #define V_RA_ERASE_ALL_POPUP_AT    9       
  82.  
  83. /* MISC ACTIONS */
  84. #define V_RA_REDRAW        10
  85. #define V_RA_QUIT         11
  86. #define V_RA_NOTHING        12
  87.  
  88. #define V_RA_SYSTEM_CALL    13     /* <call string> */
  89.  
  90. #define V_RA_ERASE_ALL_OVERLAYS    14     
  91.  
  92. #define V_RA_START_DYNAMICS    15
  93. #define V_RA_STOP_DYNAMICS    16
  94. #define V_RA_INC_UPDATE_RATE    17
  95. #define V_RA_DEC_UPDATE_RATE    18
  96.  
  97. #define V_RA_SET_DSV        19    /* <dsv> <value> */
  98. #define V_RA_INC_DSV            20      /* <dsv> <amount> */
  99. #define V_RA_DEC_DSV            21      /* <dsv> <amount> */
  100.  
  101. #define V_R_NUM_ACTIONS     21
  102.  
  103. #endif /* DVRULE_H */
  104.  
  105.